using SheLife.Domain.Entities;

namespace SheLife.Domain.Interfaces.Repositories
{
    /// <summary>
    /// 系统消息模板仓储接口
    /// </summary>
    public interface ISystemMessageTemplateRepository : IRepository<SystemMessageTemplate>
    {
        Task<SystemMessageTemplate> GetByCodeAsync(string code);
        Task<IEnumerable<SystemMessageTemplate>> GetByTypeAsync(string type);
        Task<IEnumerable<SystemMessageTemplate>> GetActiveTemplatesAsync();
        Task<bool> IsCodeExistsAsync(string code);
        Task<IEnumerable<SystemMessageTemplate>> GetByChannelAsync(string channel);
    }
}